// EPropertyTextblockWindow.h: interface for the EPropertyTextblockWindow class.
//
//////////////////////////////////////////////////////////////////////

#ifndef EPROPERTYTEXTBLOCKWINDOW
#define EPROPERTYTEXTBLOCKWINDOW
#include <string>
#include "EPropWndEdit.h"

class EPropWnd;
class EPropertyTextblock;
class EPropertyTextblockA;
class EPropertyTextblockWindow : public CFrameWnd
{
public:
    EPropertyTextblockWindow(EPropertyTextblock *pPropertyTextblock, EPropWnd *pCtrl);
    EPropertyTextblockWindow(EPropertyTextblockA *pPropertyTextblockA, EPropWnd *pCtrl);
    virtual ~EPropertyTextblockWindow();

    std::wstring GetEditText();
    void SetEditText(const std::wstring &s);

protected:
    virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext *pContext);
    virtual void PostNcDestroy() {};

    afx_msg void OnSize(UINT nType, int cx, int cy);
    afx_msg BOOL OnEraseBkgnd(CDC *pDC);
    afx_msg void OnButtonOk();
    afx_msg void OnClose();
    DECLARE_MESSAGE_MAP()

private:
    EPropWndEdit m_Edit;
    CStatic      m_ButtonPanel;
    CButton      m_ButtonOK;
    CButton      m_ButtonCancel;

    CRect        m_EditRect;
    CRect        m_PanelRect;

    EPropWnd *m_pCtrl;
    EPropertyTextblock *m_pPropertyTextblock;
    EPropertyTextblockA *m_pPropertyTextblockA;
};

#endif // !defined(AFX_EPROPERTYTEXTBLOCKWINDOW_H__CF8FE6A9_AAF4_4662_9BFE_D0ADE855FE99__INCLUDED_)
